The present invention relates to a nonvolatile memory and a memory card including the memory, and more particularly to a technique operatively applied to the detection and correction (ECC) of write/erase bit errors of the nonvolatile memory.
As a technology studied by the inventors, in a write operation on a nonvolatile memory such as a flash memory, verify processing is performed to determine whether the threshold voltage of memory cell reaches an expected value. In the verify processing, generally, writing and verifying are repeated until all the bits to be written pass. A write error of even one bit during the write operation is handled as a write error. To save the write error, a technique for detecting and correcting error bits is available (hereinafter referred to as “ECC”. ECC: Error Check and Correct).
Japanese Patent Application No. 2003-030292 (Laid-Open No. 2004-240793) describes a memory card comprising a nonvolatile memory and a controller. The controller of the memory card has an ECC function for detecting and correcting error bits of the memory. Since up to one-bit error can be easily corrected, the controller usually corrects bit errors. Since two-bit errors require longer time for correction than with one-bit errors and occur less frequently, the occurrence of two-bit errors when detected is reported by the controller to a host, which determines whether to correct the errors before giving a correction command.